using SqlSugar;
using System.ComponentModel.DataAnnotations;
namespace Jst.Domain
{
    [SugarTable("BusinessTable", TableDescription = "业务数据 多租户 (Id 隔离)")]
    public partial class BusinessTable
    {
        /// <summary>
        /// Id
        /// </summary>
        [Display(Name = "Id")]
        [SugarColumn(ColumnDescription = "Id", IsNullable = false, IsPrimaryKey = true, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long Id { get; set; }

        /// <summary>
        /// 无需手动赋值
        /// </summary>
        [Display(Name = "无需手动赋值")]
        [SugarColumn(ColumnDescription = "无需手动赋值", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long TenantId { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        [Display(Name = "名称")]
        [SugarColumn(ColumnDescription = "名称", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(255, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string Name { get; set; }

        /// <summary>
        /// 金额
        /// </summary>
        [Display(Name = "金额")]
        [SugarColumn(ColumnDescription = "金额", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        public object Amount { get; set; }

        /// <summary>
        /// 状态  中立字段，某些表可使用某些表不使用
        /// </summary>
        [Display(Name = "状态 中立字段，某些表可使用某些表不使用")]
        [SugarColumn(ColumnDescription = "状态 中立字段，某些表可使用某些表不使用", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public bool Enabled { get; set; }

        /// <summary>
        /// 中立字段，某些表可使用某些表不使用   逻辑上的删除，非物理删除  例如：单据删除并非直接删除
        /// </summary>
        [Display(Name = "中立字段，某些表可使用某些表不使用   逻辑上的删除，非物理删除  例如：单据删除并非直接删除")]
        [SugarColumn(ColumnDescription = "中立字段，某些表可使用某些表不使用   逻辑上的删除，非物理删除  例如：单据删除并非直接删除", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public bool IsDeleted { get; set; }

        /// <summary>
        /// 中立字段 是否内置数据
        /// </summary>
        [Display(Name = "中立字段 是否内置数据")]
        [SugarColumn(ColumnDescription = "中立字段 是否内置数据", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public bool IsInternal { get; set; }

        /// <summary>
        /// 创建ID
        /// </summary>
        [Display(Name = "创建ID")]
        [SugarColumn(ColumnDescription = "创建ID", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long CreateId { get; set; }

        /// <summary>
        /// 创建者
        /// </summary>
        [Display(Name = "创建者")]
        [SugarColumn(ColumnDescription = "创建者", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(255, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string CreateBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Display(Name = "创建时间")]
        [SugarColumn(ColumnDescription = "创建时间", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 修改ID
        /// </summary>
        [Display(Name = "修改ID")]
        [SugarColumn(ColumnDescription = "修改ID", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long ModifyId { get; set; }

        /// <summary>
        /// 更新者
        /// </summary>
        [Display(Name = "更新者")]
        [SugarColumn(ColumnDescription = "更新者", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(255, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string ModifyBy { get; set; }

        /// <summary>
        /// 修改日期
        /// </summary>
        [Display(Name = "修改日期")]
        [SugarColumn(ColumnDescription = "修改日期", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public DateTime ModifyTime { get; set; }

        /// <summary>
        /// 数据版本
        /// </summary>
        [Display(Name = "数据版本")]
        [SugarColumn(ColumnDescription = "数据版本", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long Version { get; set; }

    }
}
